package com.azzaou.model;

import java.io.Serializable;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;


public class Employe implements Serializable  {
	
	private static final long serialVersionUID = 1L;
	private Long id;
	private Boolean afficher;
	private String Nom;
	private String Prenom;
	private String adresse;
	private String telephone;
	private String portable;
	private String Email;
	private String Ville;
	private String cnss;
	private Date dateDebTravail;
	private Date dateFinTravail;
	private Double salaireJour;
	private Double salaireHeure;
	private Boolean estJournalier;
	private Chantier chantier;
	private CategorieEmploye categorie;
	private Long idCategorie;
	private Date dateDernierePaie;
	private float sommeApayer;
	private float sommeJours;
	private float sommeHeures;
	private float aPayerJours;
	private float aPayerHeures;
	private String flag;
	private Set<PaiementEmploye> paiementEmploye = new HashSet<PaiementEmploye>(0);;
	private List<Imputation> imputation;
	
	
	
	public Long getIdCategorie() {
		return idCategorie;
	}
	public void setIdCategorie(Long idCategorie) {
		this.idCategorie = idCategorie;
	}
	public float getSommeApayer() {
		sommeApayer = aPayerJours + aPayerHeures;
		return sommeApayer;
	}
	public void setSommeApayer(float sommeApayer) {
		this.sommeApayer = sommeApayer;
	}
	public float getSommeJours() {

		return sommeJours;
	}
	public void setSommeJours(float sommeJours) {
		this.sommeJours = sommeJours;
	}
	public float getSommeHeures() {
		return sommeHeures;
	}
	public void setSommeHeures(float sommeHeures) {
		this.sommeHeures = sommeHeures;
	}
	public float getaPayerJours() {
		aPayerJours = (float) (sommeJours * salaireJour);
		return aPayerJours;
	}
	public void setaPayerJours(float aPayerJours) {
		this.aPayerJours = aPayerJours;
	}
	public float getaPayerHeures() {
		aPayerHeures = (float)(sommeHeures * salaireHeure);
		return aPayerHeures;
	}
	public void setaPayerHeures(float aPayerHeures) {
		this.aPayerHeures = aPayerHeures;
	}
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	public Boolean getAfficher() {
		return afficher;
	}
	public void setAfficher(Boolean afficher) {
		this.afficher = afficher;
	}
	public String getNom() {
		return Nom;
	}
	public void setNom(String nom) {
		Nom = nom;
	}
	public String getPrenom() {
		return Prenom;
	}
	public void setPrenom(String prenom) {
		Prenom = prenom;
	}
	public String getAdresse() {
		return adresse;
	}
	public void setAdresse(String adresse) {
		this.adresse = adresse;
	}
	public String getTelephone() {
		return telephone;
	}
	public void setTelephone(String telephone) {
		this.telephone = telephone;
	}
	public String getPortable() {
		return portable;
	}
	public void setPortable(String portable) {
		this.portable = portable;
	}
	public String getEmail() {
		return Email;
	}
	public void setEmail(String email) {
		Email = email;
	}
	public String getVille() {
		return Ville;
	}
	public void setVille(String ville) {
		Ville = ville;
	}
	public String getcnss() {
		return cnss;
	}
	public void setcnss(String cNSS) {
		cnss = cNSS;
	}
	
	public Chantier getChantier() {
		return chantier;
	}
	public void setChantier(Chantier chantier) {
		this.chantier = chantier;
	}
	public CategorieEmploye getCategorie() {
		return categorie;
	}
	public void setCategorie(CategorieEmploye categorie) {
		this.categorie = categorie;
		if(categorie != null)
		{
		this.idCategorie = categorie.getId();
		}
	}
	public Date getDateDebTravail() {
		return dateDebTravail;
	}
	public void setDateDebTravail(Date dateDebTravail) {
		this.dateDebTravail = dateDebTravail;
	}
	public Date getDateDernierePaie() {
		return dateDernierePaie;
	}
	public void setDateDernierePaie(Date dateDernierePaie) {
		this.dateDernierePaie = dateDernierePaie;
	}
	public String getFlag() {
		return flag;
	}
	public void setFlag(String flag) {
		this.flag = flag;
	}
	public static long getSerialversionuid() {
		return serialVersionUID;
	}
	public Date getDateFinTravail() {
		return dateFinTravail;
	}
	public void setDateFinTravail(Date dateFinTravail) {
		this.dateFinTravail = dateFinTravail;
	}
	public Double getSalaireJour() {
		return salaireJour;
	}
	public void setSalaireJour(Double salaireJour) {
		this.salaireJour = salaireJour;
	}
	public Double getSalaireHeure() {
		return salaireHeure;
	}
	public void setSalaireHeure(Double salaireHeure) {
		this.salaireHeure = salaireHeure;
	}
	public Boolean getEstJournalier() {
		return estJournalier;
	}
	public void setEstJournalier(Boolean estJournalier) {
		this.estJournalier = estJournalier;
	}
	public String getCnss() {
		return cnss;
	}
	public void setCnss(String cnss) {
		this.cnss = cnss;
	}
	public Set<PaiementEmploye> getPaiementEmploye() {
		return paiementEmploye;
	}
	public void setPaiementEmploye(Set<PaiementEmploye> paiementEmploye) {
		this.paiementEmploye = paiementEmploye;
	}
	public List<Imputation> getImputation() {
		return imputation;
	}
	public void setImputation(List<Imputation> imputation) {
		this.imputation = imputation;
	}
	
}
